No doubt the continued widespread use of computers by the general public is due at least in part to the development of easy to use graphical user interfaces (GUIs) in operating systems and application software. Indeed, almost all consumer and even new professional quality applications are compliant with either the Microsoft Windows® or Apple Computer® Macintosh operating system interfaces and their menu driven paradigms.
Despite the widespread belief that such interfaces are easy to use, the complexity of many applications continues to grow. As more features are added to particular software applications, the more likely it is that even a sophisticated user would frequently become uncertain how to proceed. They need information immediately relevant to the next step in their current task. Users turn to printed or online documentation reluctantly and have been observed to ignore such help even when it presents to them the precise answer that they want.
And, while telephone support is another way to obtain assistance, such services are expensive and time consuming. When users call up technical support, customer support engineers (CSEs) have to work closely with the users, and rely on them to perform certain activities and report results back to the CSEs, so that the CSEs can reach conclusions and troubleshoot correctly. It is a very time consuming and error prone process, often causing a lot of frustration for both CSEs and users and low user satisfaction.
Software applications and consumer devices are seldom designed with supportability in mind. This makes it hard for CSEs to troubleshoot problems. It is very costly to send CSEs on site to see for themselves what the problems are, analyze and fix them. As a result, most software vendors rely upon detailed, on-line help files to provide relevant guidance. The help files are usually custom designed for each application. The help files must be updated to reflect changes made to the corresponding application. This demands considerable development and support time.
One traditional approach to providing on-line guidance is embedded help, where the help information is closely integrated with the graphical user interface (GUI). Extant on-line help systems use a Help menu, context-sensitive help links, and various methods of embedding help links in the GUI. For example, a help link may appear (i) in a menu next to a menu item that opens a dialog box; (ii) as a Help button within the dialog box; (iii) as a tool tip that appears when the mouse cursor lingers over an object within the dialog box; or (iv) in a help window alongside the GUI that always displays the help topic for the currently active dialog box. In all these cases, the help text describes aspects of the GUI in a generic way, not specific to the user's current purpose or task.
Another approach is a so-called “Wizard”, which prompts the user to select from a list of predefined common tasks. For a selected task, the wizard substitutes a separate so-called “wizard interface” on top of the GUI. The wizard prompts the user for information needed to complete a task then completes the predetermined task “under the hood,” in the sense that the user does not see or understand how the task is completed. Another approach is what is referred to as “show me” help, which uses animations to perform tasks for the user. It uses the same GUI, but it still takes control from the user. It is launched from a conventional help topic, so the user must first have accessed the help system.